TARGETOS  = BOTH
!include <win32.mak>

#==========================================================================

CC	  = cl.exe
LINK	  = link.exe
ARCH	  = lib.exe
INCDIR	  = $(VC50)\INCLUDE
LIBDIR	  = $(VC50)\LIB
DEF2	  = -D___X86 -D___32bit -D___WIN -D___VC50
CFLG2	  = $(cdebug) $(cflags) $(cvars) -I. -I$(INCDIR)
LFLG2	  = $(linkdebug) /LIBPATH:$(LIBDIR)

BIN	   = ..\bin
DEST	   = $(BIN)\$(VAR)

#==========================================================================

LIB_OBJS = sys\win\_std.obj \
	   sys\win\_main.obj \
	   sys\win\_kbd.obj \
	   sys\win\_disp.obj \
	   sys\win\_graph.obj \
	   sys\std.obj \
	   sys\memo.obj \
	   sys\kbd.obj \
	   sys\disp.obj \
	   sys\graph.obj \
	   sys\font.obj \
	   sys\cons.obj \
	   sys\file.obj \
	   sys\tim.obj \
	   sys\mice.obj \
	   sys\real.obj \
	   sys\sig.obj \
	   lib\str.obj \
	   lib\num.obj

DIO_OBJS = main\dio.obj \
	   eval\eval.obj \
	   eval\cmd.obj \
	   eval\arit.obj \
	   eval\efpu.obj \
	   vp\vp.obj \
	   vp\opfn.obj \
	   vp\vfpu.obj \
	   vp\sys.obj \
	   vp\lib.obj

#==========================================================================

.c.obj:
       $(CC) $(CFLG2) $(CFLG) $(DEF2) $(DEF) -Fo$@ $<

#==========================================================================

all: $(DEST)\dio.lib $(DEST)\dio.exe $(DEST)\gmod.exe

#==========================================================================

$(DEST)\dio.lib: $(LIB_OBJS)
	$(ARCH) /OUT:$@ $(LIB_OBJS)

!ifdef DIO_BATCH
$(DEST)\dio.exe: sys\asc0816.h $(DIO_OBJS) $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(conlflags) \
	$(DIO_OBJS) $(DEST)\dio.lib $(conlibs) \
	-out:$@ $(MAPFILE)

$(DEST)\gmod.exe: sys\asc0816.h test\gmod.obj $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(conlflags) \
	test\gmod.obj $(DEST)\dio.lib $(conlibs) \
	-out:$@ $(MAPFILE)
!else
$(DEST)\dio.exe: sys\asc0816.h $(DIO_OBJS) $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(guilflags) \
	$(DIO_OBJS) $(DEST)\dio.lib $(guilibs) \
	-out:$@ $(MAPFILE)

$(DEST)\gmod.exe: sys\asc0816.h test\gmod.obj $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(guilflags) \
	test\gmod.obj $(DEST)\dio.lib $(guilibs) \
	-out:$@ $(MAPFILE)
!endif

$(DEST)\tkey.exe: sys\asc0816.h test\tkey.obj $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(guilflags) \
	test\tkey.obj $(DEST)\dio.lib $(guilibs) \
	-out:$@ $(MAPFILE)

$(DEST)\gkey.exe: sys\asc0816.h test\gkey.obj $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(guilflags) \
	test\gkey.obj $(DEST)\dio.lib $(guilibs) \
	-out:$@ $(MAPFILE)

$(DEST)\mkey.exe: sys\asc0816.h test\mkey.obj $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(guilflags) \
	test\mkey.obj $(DEST)\dio.lib $(guilibs) \
	-out:$@ $(MAPFILE)

$(DEST)\mchr.exe: sys\asc0816.h test\mchr.obj $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(guilflags) \
	test\mchr.obj $(DEST)\dio.lib $(guilibs) \
	-out:$@ $(MAPFILE)

$(DEST)\vdb.exe: sys\asc0816.h test\vdb.obj $(DEST)\dio.lib
	$(LINK) $(LFLG2) $(LFLG) $(guilflags) \
	test\vdb.obj $(DEST)\dio.lib $(guilibs) \
	-out:$@ $(MAPFILE)

#==========================================================================

sys\asc0816.h: $(BIN)\b2c.exe $(BIN)\asc0816.fnt
	$(BIN)\b2c.exe $(BIN)\asc0816.fnt $@ N1 Fnt_asc0816[]

#$(BIN)\b2c.exe: misc\b2c.obj
#	 $(LINK) $(LFLG2) $(LFLG) $(conlflags) \
#	 misc\b2c.obj $(conlibs) \
#	 -out:$@ $(MAPFILE)

#==========================================================================
